﻿#ifndef MESSDISPATH_H
#define MESSDISPATH_H

#include <QObject>

namespace Core {

	class MessDispath : public QObject
	{
		Q_OBJECT

	public:
		/**
		* @brief	setSystemLogInfo 设置系统日志信息
		* @param	strLog 日志
		* @param	iLogType 日志类型
		* @return
		*/
		void setSystemLogInfo(QString strLog, int iLogType = 0);

		/**
		 * @brief	setNetworkSendMsgLength 设置串口发送信息长度
		 * @param	iLength 信息长度
		 * @return 
		 */
		void setNetworkSendMsgLength(int iLength);

		/**
		 * @brief	setNetworkRecvMsgLength 设置串口接收信息长度
		 * @param	iLength 信息长度
		 * @return 
		 */
		void setNetworkRecvMsgLength(int iLength);

	Q_SIGNALS:
		/**
		* @brief	signalSystemLogInfo 发送系统日志信息
		* @param	strLog 日志信息
		* @param	iLogType 日志类型
		* @return
		*/
		void signalSystemLogInfo(QString strLog, int iLogType);

		/**
		 * @brief	signalSerialPortSendMsgLength 串口发送信息长度
		 * @param	iLength 信息长度
		 * @return 
		 */
		void signalNetworkSendMsgLength(int iLength);

		/**
		 * @brief	signalSerialPortRecvMsgLength 串口接收信息长度
		 * @param	iLength 信息长度
		 * @return 
		 */
		void signalNetworkRecvMsgLength(int iLength);

	public:
		static MessDispath *instance();

	private:
		explicit MessDispath(QObject *parent = nullptr);
		~MessDispath();
	};

}//namespace Core 

#endif // MESSDISPATH_H